访问电脑版页面

导航:老古开发网手机版STM32单片机STM32单片机Cube编程

手机红外遥控器发送红外信号到STM32【HAL库】

导读:
关键字:
现在大部分手机上都有红外遥控功能,而且好像大部分信号STM32都是可以收到的。现在就使用STM32发送红外信号,由STM32上的红外接收器接收后执行不同的操作。以下是注意事项:

在标准库中有  EXTI_ClearITPendingBit(EXTI_Line15); 清除中断位,使用HAL库不用使用清除中断位

在HAL库中NVIC的设置在文件stm32f1xx_hal_cortex.c中

HAL_Delay并不能实现us的延时效果,要自己写

            void delay_us(uint32_t i)

            {

                uint32_t temp;

                SysTIck->LOAD=9*i;

                SysTIck->CTRL=0X01;

                SysTick->VAL=0;

          do

                {

                    temp=SysTick->CTRL;

                }

              while((temp&0x01)&&(!(temp&(1<<16))));

              SysTick->CTRL=0;

              SysTick->VAL=0;

          }

红外接收器的数据引脚为PG15

PG15的设置

/*Configure GPIO pin : PG15 */

GPIO_InitStruct.Pin = GPIO_PIN_15;

GPIO_InitStruct.Mode = GPIO_MODE_IT_FALLING;  //下降沿触发

GPIO_InitStruct.Pull = GPIO_PULLUP;  //上拉模式

HAL_GPIO_Init(GPIOG, &GPIO_InitStruct);

RCC设置72MHz,要注意,时钟频率不同,计算时使用的数值大小不同

要printf输出到串口还是要重定向printf

#ifdef __GNUC__

/* With GCC/RAISONANCE, small printf (option LD Linker->Libraries->Small printf

set to 'Yes') calls __io_putchar() */

#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)

#else

#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)

#endif /* __GNUC__ */

/**

* @brief  Retargets the C library printf function to the USART.

* @param  None

* @retval None

*/

PUTCHAR_PROTOTYPE

{

/* Place your implementation of fputc here */

/* e.g. write a character to the EVAL_COM1 and Loop until the end of transmission */

HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xFFFF);

return ch;

}

手机遥控器键位对应编码

1 红外接收码 926D22DD

2 红外接收码 926DA25D

3 红外接收码 926D629D

4 红外接收码 926D609F

5 红外接收码 926DE01F

6 红外接收码 926D827D

7 红外接收码 926D6897

8 红外接收码 926D02FD

9 红外接收码 926DAA55

0 红外接收码 926D12ED




图片发自简书App

来源:网络整理   作者:佚名  2017/11/22 11:22:00
栏目: [ STM32单片机Cube编程]

相关阅读

有关于STM32Cube的几个常见问题(USB设备库)

STM32标准库改为HAL库的程序实现

STM32CubeMX新建工程的过程及方法解析

STM32程序之MAX6675热电偶温度读取

意法半导体STM32Cube微控制器开发软件在GitHub正式上线

基于嵌入式系统原型设计的STM32开放式开发环境详解

意法半导体为STM32Cube生态系统新增LoRaWAN®固件无线更新支持

意法半导体发布STM32CubeMonitor工具 可实时显示应用程序运行时的变量

手机红外遥控器发送红外信号到STM32【HAL库】

STM32单片机的CPU运行性能的算法测试

意法半导体更新TouchGFX软件框架,新增强大功能和支持STM32Cube的便利工具

STM32CubeMX开发工具的安装

浅析STM32 HAL固件库编程文件组织

STM32CubeMX配置工具创建了STM32微控制器 让优化MCU配置参数更加轻松

ST针对STM32微控制器推出一套免费的功能强大的设计工具及软件STM32Cube

ST的 STM32Cube开发工具将支持经市场考验的STM32 F2微控制器

意法半导体发布最新版的STM32Cube ecosystem Multi-OS软件

关于stm32CubeMX的stm32f103编程

关于stm32跑马灯的程序

意法半导体(ST)灵活便捷的STMCube软件平台帮助设计人员快速上手,支持所有量产STM32微控制器